home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 8 / QRZ Ham Radio Callsign Database - Volume 8.iso / pc / files / t_unix / j109lxa4.tar / BSAHAX < prev    next >
Text File  |  1994-06-04  |  6KB  |  114 lines

  1. Modifications to NOS 921129/PA0GRI/WG7J 1.09 by KF8NH:  (ALPHA.3 Development)
  2.  
  3. * Tracing.  A new mode "monitor" has been added which uses a compressed display
  4.   format and displays AX.25 Text packets the way they look to users.  This is
  5.   not Linux-specific.  Define MONITOR in config.h to enable this.  This uses
  6.   the previously undefined flag combination IF_TRACE_ASCII|IF_TRACE_HEX,
  7.   available as the flag "monitor".
  8.   #define MONITOR
  9.   "trace <if> monitor" activates
  10.   "trace <if> -monitor" returns to ASCII trace
  11.  
  12. * AX.25 ttycall.  This is equivalent to an ordinary PBBS keyboard-to-keyboard
  13.   connect; AX.25 connects to this call get fed directly to ttylink.
  14.   #define TTYCALL
  15.   "ax25 ttycall <callsign>"
  16.  
  17. * 3-argument "ax25 bc".  You can now optionally specify a string to broadcast.
  18.   I use this to get separate beacons on each interface, since one is on an IP
  19.   frequency and the other is a user frequency.
  20.   #define AXBCSTR
  21.   "ax25 bc <if> [<string>]"
  22.  
  23. Support for Linux (386 *ix clone) and other POSIX-supporting *ix:
  24.  
  25. Compiling with -DLINUX and -DUNIX causes JNOS to be built for the Linux
  26. environment.  This has quite a few differences in terms of implementation
  27. but (hopefully) few, if any, user-visible differences.
  28.  
  29. * Display is asynchronous:  each session window continues to be updated even
  30.   if it is not current.  Page mode becomes a bit more important with this
  31.   change.
  32.  
  33. * The display management is done via curses.  A session manager is partially
  34.   implemented; when complete, several other options will be available ("dumb"
  35.   for use from /etc/rc, "xterm" for separate windows for each session).
  36.  
  37. * F1-F10 are supported via terminfo.  (Linux's termcap-based curses is too
  38.   buggy for NOS to function; it dumps core when it tries to scroll.)  They
  39.   have the same meanings as under the DOS version.  The arrow keys are also
  40.   supported, and command history works.
  41.  
  42. * You can't run JNOS out of /etc/rc; it has to be interactive.  This will
  43.   change in the future; see above.
  44.  
  45. * Device types other than asy are NOT supported.  These will require kernel
  46.   device drivers.  An scc driver for Linux is available; it should be in
  47.   the tcpip/incoming area on ucsd.edu, where you hopefully found JNOS/Linux,
  48.   as sccdrv12.taz.  (By now this has probably been moved.)
  49.  
  50. * Interfacing to the Linux TCP/IP system is NOT directly supported.  However,
  51.   you can easily run SLIP over a pty (!) between JNOS and Linux; attach the
  52.   master side of the pty using "dip", then attach the slave in JNOS as if it
  53.   were a tty.
  54.  
  55. * Connects get the JNOS BBS; no provision for system logins is made, and none
  56.   will be made.  This is an even bigger potential security hole than TCP/IP
  57.   gatewaying; that is why I chose to port JNOS instead of running WAMPES,
  58.   which has already been ported to Linux.  (Note that, because of the way
  59.   WAMPES used to manage users, a malicious user could play a trick like
  60.   setting their MYCALL to the name of a user.  Later versions of WAMPES still
  61.   allow this as an option but also provide more secure alternatives.)
  62.  
  63. * A completely different means of scheduling timers and checking for I/O is
  64.   used, which is both more efficient and more responsive than the DOS method.
  65.   Instead of using a 55-ms timer tick and checking for timers and I/O on each
  66.   tick, the system sleeps on a select() on the asy ports and keyboard with a
  67.   select timeout.  When not sleeping on the select, a 55-ms timer tick is
  68.   still used to prevent I/O blockage during slow operations, e.g. the linear
  69.   linked-list search/insert used by the "dir" command to sort the file list.
  70.  
  71. The Linux support is at least partially portable, as Linux's native API is the
  72. POSIX P1003.1 specification.  However, POSIX leaves several things unspecified
  73. and others optional; for example, the asy management is POSIX, but I don't
  74. expect to see DOS (usefully) supporting tcsetattr() in the near future :-)
  75. select() is POSIX optional, but is utterly essential to JNOS.  The directory
  76. utilities use statfs(), of which at least four (!) variants exist, none POSIX.
  77. And so on.
  78.  
  79.  
  80. u2j - mail filtering:
  81.  
  82. The "u2j" program is provided to pass messages from Linux into NOS.  (Sorry,
  83. going the other way isn't supported yet, except by connecting them via SLIP.)
  84. Usage is:  "u2j NOS-address < file-with-RFC822-formatted-message".  This usage
  85. works well with aliases and .forward files, for gatewaying mailing lists.
  86.  
  87. You'll need to edit u2j.c to change the pathname to your JNOS installation.
  88. Someday I may clean this up (probably a command line option).
  89.  
  90.  
  91. TODO:
  92.  
  93. * Implement fkeys.  This will take some work, as I can't use KEY_* from
  94.   ncurses (it blocks).  On the other hand, since I've already *got* key trie
  95.   code, all I really need is tigetstr().  This also means that fkey can take
  96.   key names from terminfo instead of cryptic numbers (not that the terminfo
  97.   names are necessarily all that much better, mind you.... :-)  Yet again,
  98.   though, the issue of session managers complicates this.
  99.  
  100. * Finish session manager support and detached consoles.  The folks who have
  101.   to wait for me to start X so they can digi through me will undoubtedly thank
  102.   me for this :-)  N.B. This will take real work.  Don't expect it soon.
  103.  
  104. * Implement RTS/CTS flow control.  Doable, but I can't test it.
  105.  
  106. * Implement DTR(=DCD).  Once again, SCO is a bottleneck (actually, System V in
  107.   general):  you can't distinguish between a no-delay read with no data avail-
  108.   able and a read with no carrier present.  Sigh.
  109.  
  110. * Use a Unix format for ftp's LIST and NLST commands.  I'm holding off until
  111.   I decide how to best map DOS attributes:  if I do this it will be usable
  112.   under both, since some folks have requested a format that will work with
  113.   point-and-shoot ftp client front-ends.
  114.